import 'package:get/get.dart';
import 'package:flutter/material.dart';
import 'package:rjpb/page/home/inspection/controller/inspection_page_controller.dart';
import 'package:rjpb/page/home/fireAlarm/controller/fireAlarm_page_controller.dart';
import 'package:rjpb/page/home/profile/controllers/profile_controller.dart';

class HomeController extends GetxController {
  var currentIndex = 0.obs;
  late PageController pageController;

  @override
  void onInit() {
    pageController = PageController();
    super.onInit();
  }

  void changePage(int index) {
    currentIndex.value = index;
    _reloadPage(index); // 调用页面加载逻辑，使得切换到的页面重新加载数据
  }

  void _reloadPage(int index) {
    // 根据页面索引调用对应的加载逻辑
    if (index == 0) {
      // 巡检页面的加载逻辑
      Get.find<InspectionPageController>().loadInitialData();
      Get.find<InspectionPageController>().loadMenuData();
    } else if (index == 1) {
      // FireAlarmPage 的加载逻辑
      print('加载火警页面数据');
      // if (!Get.isRegistered<FireAlarmPageController>()) {
      //   Get.put(FireAlarmPageController());
      // }
      // // 在这里调用 FireAlarmPage 的控制器或加载逻辑
      // final fireAlarmController = Get.find<FireAlarmPageController>();
      // fireAlarmController.loadInitialData(); // 重新加载火警页面数据
      // fireAlarmController.fetchPortCount(); // 请求点位总数
      // fireAlarmController.onTabChanged("火警"); // 切换到默认标签页
    } else if (index == 2) {
      // ProfilePage 的加载逻辑
      print('加载个人中心页面数据');
      // if (!Get.isRegistered<ProfileController>()) {
      //   Get.put(ProfileController());
      // }
      // Get.find<ProfileController>().fetchUserInfo(); // 重新获取用户信息
      // 在这里调用 ProfilePage 的控制器或加载逻辑
    }
  }

  @override
  void onClose() {
    pageController.dispose();
    super.onClose();
  }
}
